/* ------------------------------------------
CSS TOGGLE SWITCHES (Ionuț Colceriu)
Licensed under Unlicense 
https://github.com/ghinda/css-toggle-switch
------------------------------------------ */

/* Hide by default */

.switch .slide-button,
.toggle p span {
	display: none;
}

/* Toggle Switches */

/* We can't test for a specific feature,
 * so we only target browsers with support for media queries.
 */
@media only screen {

	/* Checkbox
	 */
	.toggle {
		position: relative;
		padding: 0;
		margin-left: 100px;
	}

	/* Position the label over all the elements, except the slide-button
	 * Clicking anywhere on the label will change the switch-state
	 */
	.toggle label {
		position: relative;
		z-index: 3;
		
		display: block;
		width: 100%;
	}

	/* Don't hide the input from screen-readers and keyboard access
	 */
	.toggle input {
		position: absolute;
		opacity: 0;
		z-index: 5;
	}
	
	.toggle p {
		position: absolute;
		left: -100px;
		
		width: 100%;
		margin: 0;
		padding-right: 100px;
		
		text-align: left;
	}
	
	.toggle p span {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 5;
		
		display: block;
		width: 50%;
		margin-left: 100px;
		
		text-align: center;
	}
	
	.toggle p span:last-child {
		left: 50%;
	}

	.toggle .slide-button {
		position: absolute;
		right: 0;
		top: 0;
		z-index: 4;
		
		display: block;
		width: 50%;
		height: 100%;
		padding: 0;
	}

	/* Radio Switch
	 */
	.switch {
		position: relative;
		padding: 0;
	}
	
	.switch input {
		position: absolute;
		opacity: 0;
	}
	
	.switch label {
		position: relative;
		z-index: 2;
		
		float: left;
		width: 50%;
		height: 100%;
		
		margin: 0;
		text-align: center;
	}

	.switch .slide-button {
		position: absolute;
		top: 0;
		left: 0;
		padding: 0;
		z-index: 1;
		
		width: 50%;
		height: 100%;
	}

	.switch input:last-of-type:checked ~ .slide-button {
		left: 50%;
	}

	/* Switch with 3 items */
	.switch.switch-three label,
	.switch.switch-three .slide-button {
		width: 33.3%;
	}

	.switch.switch-three input:checked:nth-of-type(2) ~ .slide-button {	
		left: 33.3%;
	}

	.switch.switch-three input:checked:last-of-type ~ .slide-button {
		left: 66.6%;
	}
	
	/* Switch with 4 items */
	.switch.switch-four label,
	.switch.switch-four .slide-button {
		width: 25%;
	}

	.switch.switch-four input:checked:nth-of-type(2) ~ .slide-button {	
		left: 25%;
	}
	
	.switch.switch-four input:checked:nth-of-type(3) ~ .slide-button {	
		left: 50%;
	}

	.switch.switch-four input:checked:last-of-type ~ .slide-button {
		left: 75%;
	}
	
	/* Switch with 5 items */
	.switch.switch-five label,
	.switch.switch-five .slide-button {
		width: 20%;
	}

	.switch.switch-five input:checked:nth-of-type(2) ~ .slide-button {	
		left: 20%;
	}
	
	.switch.switch-five input:checked:nth-of-type(3) ~ .slide-button {	
		left: 40%;
	}
	
	.switch.switch-five input:checked:nth-of-type(4) ~ .slide-button {	
		left: 60%;
	}

	.switch.switch-five input:checked:last-of-type ~ .slide-button {
		left: 80%;
	}

	/* Shared */
	.toggle,
	.switch {
		display: block;
		height: 30px;
	}
	
	.switch *,
	.toggle * {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	.switch .slide-button,
	.toggle .slide-button {
		display: block;
		
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-ms-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
	}
	
	.toggle label,
	.toggle p,
	.switch label {
		line-height: 30px;
		vertical-align: middle;
	}
	
	.toggle input:checked ~ .slide-button {
		right: 50%;
	}
	
	/* Outline the toggles when the inputs are focused */
	.toggle input:focus ~ .slide-button,
	.switch input:focus + label {
		outline: 1px dotted #888;
	}
	
	/* Bugfix for older Webkit, including mobile Webkit. Adapted from:
	 * http://css-tricks.com/webkit-sibling-bug/
	 */
	.switch, .toggle {
		-webkit-animation: bugfix infinite 1s;
	}
	
	@-webkit-keyframes bugfix { from { position: relative; } to { position: relative; } }


	/* Standalone Themes */


	/* Candy Theme
	 * Based on the "Sort Switches / Toggles (PSD)" by Ormal Clarck
	 * http://www.premiumpixels.com/freebies/sort-switches-toggles-psd/
	 */
	 
	.candy {
		background-color: #2d3035;
		
		color: #fff;
		font-weight: bold;
		text-align: center;
		text-shadow: 1px 1px 1px #191b1e;
			
		border-radius: 3px;	
		
		box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.3), 0 1px 0px rgba(255, 255, 255, 0.2);
	}

	.candy input:checked + label {
		color: #333;
		text-shadow: 0 1px 0 rgba(255,255,255,0.5);
	}
		
	.candy .slide-button {
		border: 1px solid #333;

		background-color: #70c66b;
		
		background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
		background-image:    -moz-linear-gradient(top, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
		background-image:     -ms-linear-gradient(top, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
		background-image:      -o-linear-gradient(top, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
		background-image:         linear-gradient(top, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
		
		box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), inset 0 1px 1px rgba(255, 255, 255, 0.45);
		
		border-radius: 3px;
	}

	.candy p {
		color: #333;
		
		text-shadow: none;
	}

	.candy span {
		color: #fff;
	}

	.candy.blue .slide-button {
		background-color: #38a3d4;
	}

	.candy.yellow .slide-button {
		background-color: #f5e560;
	}

	/* Android Theme
	 * Based on Holo
	 */
	 
	.android {
		background-color: #b6b6b6;
		
		color: #fff;
	}

	.android.toggle {
		border: 2px solid #b6b6b6;
	}

	.android.switch {
		overflow: hidden;
	}
		
	.android.switch .slide-button {
		background-color: #279fca;
		
		-webkit-transform: skew(20deg) translateX(10px);
		-moz-transform: skew(20deg) translateX(10px);
		-ms-transform: skew(20deg) translateX(10px);
		-o-transform: skew(20deg) translateX(10px);
		transform: skew(20deg) translateX(10px);
	}

	.android.toggle .slide-button {
		border-radius: 2px;
		
		background-color: #848484;
	}

	/* Selected ON toggle */
	.android.toggle input:first-of-type:checked ~ .slide-button {
		background-color: #279fca;
	}

	.android.switch input:first-of-type:checked ~ .slide-button {
		-webkit-transform: skew(20deg) translateX(-10px);
		-moz-transform: skew(20deg) translateX(-10px);
		-ms-transform: skew(20deg) translateX(-10px);
		-o-transform: skew(20deg) translateX(-10px);
		transform: skew(20deg) translateX(-10px);
	}

	.android p {
		color: #333;
	}

	.android span {
		color: #fff;
	}

	.android.switch,
	.android span {
		text-transform: uppercase;
	}

	/* Fix Android/Holo Theme in firefox - force absolute position */
	.android.switch input {
		top: 0;
		left: 0;
	}

	/* iOS Theme
	 * Similar to iOS but more accessible
	 */ 

	.ios {
		background: -webkit-linear-gradient(top, #cfcfcf, #efefef 50%, #f9f9f9 50%, #fefefe);
		background: -moz-linear-gradient(top, #cfcfcf, #efefef 50%, #f9f9f9 50%, #fefefe);
		background: -o-linear-gradient(top, #cfcfcf, #efefef 50%, #f9f9f9 50%, #fefefe);
		background: -ms-linear-gradient(top, #cfcfcf, #efefef 50%, #f9f9f9 50%, #fefefe);
		background: linear-gradient(top, #cfcfcf, #efefef 50%, #f9f9f9 50%, #fefefe);
		
		-webkit-box-shadow: inset 0 2px 2px #b6b6b6, inset 3px 0 3px #b6b6b6;
		box-shadow: inset 0 2px 2px #b6b6b6, inset 3px 0 3px #b6b6b6;

		border: 1px solid #efefef;
		border-radius: 3px;
		
		color: #7f7f7f;
		font: bold 14px sans-serif; 
		text-align: center;
		text-shadow: none;
	}

	.ios.toggle .slide-button {
		border: 1px solid #919191;
		background: -webkit-linear-gradient(top, #cdcdcd, #fbfbfb);
		background: -moz-linear-gradient(top, #cdcdcd, #fbfbfb);
		background: -o-linear-gradient(top, #cdcdcd, #fbfbfb);
		background: -ms-linear-gradient(top, #cdcdcd, #fbfbfb);
		background: linear-gradient(top, #cdcdcd, #fbfbfb);
		
		border-radius: 3px;
		
		-webkit-box-shadow: inset 0 1px 0 #f0f0f0;
		box-shadow: inset 0 1px 0 #f0f0f0;
	}

	/* Selected ON toggle */
	.ios.toggle input:first-of-type:checked ~ p span:first-child,
	.ios.switch input:checked + label {
		color: #fff;
		text-shadow: 0 -1px 0 #1b3b6f;
	}

	.ios.toggle input:first-of-type:checked ~ .slide-button,
	.ios.switch .slide-button {
		background: -webkit-linear-gradient(top, #3672dc, #4085ec 50%, #4d8fef 50%, #76adfc);
		background: -moz-linear-gradient(top, #3672dc, #4085ec 50%, #4d8fef 50%, #76adfc);
		background: -o-linear-gradient(top, #3672dc, #4085ec 50%, #4d8fef 50%, #76adfc);
		background: -ms-linear-gradient(top, #3672dc, #4085ec 50%, #4d8fef 50%, #76adfc);
		background: linear-gradient(top, #3672dc, #4085ec 50%, #4d8fef 50%, #76adfc);
		
		border-radius: 3px;
		border: 1px solid #1654b5;
		
		text-align: center;
		color: #fff;
		
		font: bold 14px sans-serif; 
		text-shadow: 0 -1px 0 #1b3b6f;
	}
	
	.ios.toggle p span {
		color: #7f7f7f;
	}
	
}
